# from 构建镜像的基础源镜像 该image镜像文件继承官方的node image
FROM node:16-alpine

# 在容器中创建一个目录
RUN mkdir -p /usr/src/nebula/

# 定位到容器的工作目录
WORKDIR /usr/src/nebula/

# RUN/COPY是分层的，package.json 提前，只要没修改就不会重新安装包
COPY package.json /usr/src/nebula/package.json
COPY .npmrc /usr/src/nebula/.npmrc

RUN cd /usr/src/nebula/
RUN npm install

# 设置时区
RUN rm -rf /etc/localtime && ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

# 把当前目录下所有的文件拷贝到 Image 的 /usr/src/app/目录下
COPY . /usr/src/nebula/

# 在这里build，这时文件里才有ts
RUN npm run build

EXPOSE 3000
CMD npm start
